K-means clustering is a method that may be used for clustering data points for a variety of applications. The k-means clustering method groups or segments t data points in an n-dimensional space into a set of k clusters. In other words, k-means clustering aims to partition n observations into k clusters in which each observation belongs to the cluster with the nearest mean. K-means clustering is an iterative approach to classification of the data points.
A memristor crossbar array structure can carry out vector-matrix multiplication. By applying a vector of voltage signals to the rows of a memristor crossbar array, multiplication by each element's conductance is carried out. The memristor crossbar array structure may be further configured to accelerate performance of k-means clustering for vector data sets over traditional digital ASIC processing.